package com.example.arrays;

import com.utils.exercise.DesignateRandom_Utils;
import org.junit.jupiter.api.Test;

import java.util.Arrays;
import java.util.Comparator;
import java.util.function.IntFunction;

/**
 * @Author 郅占伟
 * @ClassName TestArrays
 * @Description 不能创建对象，由类名点直接调用。
 * @Date 2024年10月21日
 * @Version: 1.0
 */
public class TestArrays {

    /**
     * @description 数组排序：Arrays.sort()，以及自定义排序Comparator
     */
    @Test
    public void testSort() {
        int[] arr  = DesignateRandom_Utils.random_Int(10,30);
        Integer[] arr2 = Arrays.stream(arr).boxed().toArray(new IntFunction<Integer[]>() {
            @Override
            public Integer[] apply(int value) {
                return new Integer[arr.length];
            }
        });

        System.out.println(Arrays.toString(arr2));
        Arrays.sort(arr2);
        System.out.println(Arrays.toString(arr2));

        Arrays.sort(arr2,new Comparator<Integer>(){
            @Override
            public int compare(Integer o1, Integer o2) {
                return o2-o1;
            }
        });
        System.out.println(Arrays.toString(arr2));
    }
}
